package com.jyw.business.obstacles.mapper;

import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jyw.business.obstacles.domain.ObsOrderFault;
import com.jyw.business.obstacles.domain.ObsOrderSend;
import com.jyw.business.obstacles.domain.vo.wechat.WxWorkOrderSendVO;
import org.apache.ibatis.annotations.Param;

/**
 * 报障-派单记录Mapper接口
 *
 * @author system
 * @date 2023-08-11
 */
public interface ObsOrderSendMapper extends BaseMapper<ObsOrderSend> {
    /**
     * 查询报障-派单记录
     *
     * @param id 报障-派单记录主键
     * @return 报障-派单记录
     */
    public ObsOrderSend selectObsOrderSendById(Long id);

    /**
     * 查询报障-派单记录列表
     *
     * @param obsOrderSend 报障-派单记录
     * @return 报障-派单记录集合
     */
    public List<ObsOrderSend> selectObsOrderSendList(ObsOrderSend obsOrderSend);

    /**
     * 新增报障-派单记录
     *
     * @param obsOrderSend 报障-派单记录
     * @return 结果
     */
    public int insertObsOrderSend(ObsOrderSend obsOrderSend);

    /**
     * 修改报障-派单记录
     *
     * @param obsOrderSend 报障-派单记录
     * @return 结果
     */
    public int updateObsOrderSend(ObsOrderSend obsOrderSend);

    /**
     * 删除报障-派单记录
     *
     * @param id 报障-派单记录主键
     * @return 结果
     */
    public int deleteObsOrderSendById(Long id);

    /**
     * 批量删除报障-派单记录
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteObsOrderSendByIds(Long[] ids);

    /**
     * 查询工单派单信息
     *
     * @param orderNum
     * @return
     */
    List<WxWorkOrderSendVO> queryOrderSendList(String orderNum);

    /**
     * 工单超时未结单查询
     * @param timeOutDate
     * @return
     */
    List<ObsOrderFault> listTimeOut(@Param("data") Date timeOutDate);
}
